In general, the present invention relates to a volume management method for defining a volume on a physical storage device of a storage apparatus. More particularly, the present invention relates to a processing technique for creating and moving a volume by consideration of effects on performance of other volumes.
There exists a technology called RAID (Redundant Array of Inexpensive Disks) for improving reliability and performance by grouping two or more physical disks to provide redundancy. In using a storage apparatus by adoption of the RAID technology, first of all, two or more physical disks (physical storage devices) of a storage apparatus are collected to form a group called a parity group. Then, logical storage areas are defined in the parity group. The logical storage areas are each called a volume to be used by a computer making accesses to the storage apparatus. In many cases, at least two volumes can be defined in a parity group. FIG. 1(a) shows typical definition. As shown in FIG. 1(a), four physical disks 1001, 1002, 1003 and 1004 constitute a parity group 1005 in which three volumes 1006, 1007 and 1008 are defined. The volumes 1006, 1007 and 1008 defined in the parity group 1005 all use the physical disks 1001, 1002, 1003 and 1004. A state of letting different volumes share the same physical disk prevails not only in a case wherein a storage apparatus adopting the RAID technology is used, but also a case in which two or more volumes are defined on a physical disk.
There are several ways to define the method of composing a parity group of a plurality of physical disks by using such a RAID technology. A standard used in the definition of the method is referred to as a RAID level. At RAID level 0, which is also called a stripe, for example, data is written sequentially into a plurality of physical disks in predetermined-size units. At RAID level 1, which is called a mirror, on the other hand, data is read out from and written into 2 physical disks. At RAID levels 4 and 5 for storing data redundantly, data is stored by being distributed among a plurality of disks except one specific disk so that data can be recovered onto the specific disk in case another physical disk fails and becomes unusable. RAID levels 4 and 5 differ from each other in that they employ different ways of holding redundant data.
There also exists a storage apparatus in which a parity group is composed by grouping partial areas of physical disks instead of whole areas of physical disks. In this case, a physical disk may belong to a plurality of parity groups. An example is shown in FIG. 1(b). In this example, a parity group 1015 is composed of partial areas of physical disks 1009, 1010, 1011 and 1012. A volume 1016 is defined in the parity group 1015. A parity group 1013 is composed of partial areas of physical disks 1009 and 1010 and no volume is defined in the parity group 1013. A parity group 1014 is composed of partial areas of physical disks 1011 and 1012 and a volume 1017 is defined in the parity group 1014. In this storage apparatus, the physical disks 1009, 1010, 1011 and 1012 each belong to 2 parity groups.
In some storage apparatuses adopting the RAID technology, a volume is not directly defined in a parity group. Instead, such storage apparatuses have a function whereby logical disks are defined in a parity group, logical disks are divided and joined repeatedly across several hierarchical layers and a logical disk at the top hierarchical layer is defined as a volume. In the storage apparatus shown in FIG. 1(b), for example, a logical disk is defined in each of parity groups 1013 and 1014, and what is obtained by joining the defined logical disks forms a volume.
One of references describing the RAID technology is a document authored by Mark Farley with a title of “Building Storage Networks,” Network Professional's Library, Osborne.
By the way, in recent years, attention is paid to a SAN (Storage Area Network), which is a high-speed network comprising typically fiber channels connecting a plurality of storage apparatuses to a plurality of client computers using the storage apparatuses. In the SAN environment, a client computer is capable of using two or more storage apparatuses at the same time and a storage apparatus can be used by two or more client computers. A typical configuration of the SAN is shown in FIG. 2. In the SAN configuration shown in FIG. 2, a network 2001 connects storage apparatuses 2005, 2006 and 2007, client computers 2002 and 2003 using the storage apparatuses 2005, 2006 and 2007 as well as a management computer 2004 for managing the storage apparatuses 2005, 2006 and 2007 to each other. The management computer 2004 defines internal configurations of the storage apparatuses 2005, 2006 and 2007, which are connected to the network 2001, and controls permissions of accesses to the storage apparatuses 2005, 2006 and 2007. In the SAN environment shown in FIG. 2, if the client computer 2002 is given an access permission by the management computer 2004, the client computer 2002 is capable of making accesses to all the storage apparatuses 2005, 2006 and 2007. In addition, the client computer 2002 and the client computer 2003 are capable of sharing the storage apparatus 2005.
Many storage apparatuses such as the storage apparatuses 2005, 2006 and 2007, which are used in the SAN environment like the one shown in FIG. 2, adopt the RAID technology described earlier. For example, a plurality of volumes using the same physical disks are created in the storage apparatus 2005, and each of the volumes can be used by the client computers 2002 and 2003.
One of references describing the SAN is a document with a title of “Data Storage: Report 2000,” an edition of Nikkei Computopia, 2000.
A storage management program is used for doing work to create and move a parity group and a volume. The storage management program is executed by the management computer connected to the SAN or a SAN terminal provided with a storage apparatus. If physical disks in a storage apparatus being processed have sufficiently large storage capacities and the storage apparatus' necessary resources can all be used, requested operations can always be carried out.
By the way, the storage management program may have a function relevant to management of performance of physical disks and volumes. The storage management program may be provided with a function to monitor an average access time of a volume in physical disks and issues a warning if the monitored access time exceeds the average access time's upper limit determined in advance. The storage management program may have a function to store a performance log and optimize performance by relocation of volumes in accordance with the stored performance log.